It is essential to monitor the performance status of applications once they are deployed and, in particular, where such applications are deployed over the Internet or the World-Wide Web (“Web”) and where they must provide a certain quality of service. Prior art performance monitoring systems typically comprise three parts: collection, transport, and analysis. The collection part may further include a data filtering function to reduce the data collected. The performance data is typically collected into large files for later transport and analysis. An example of such a performance tool is revealed in U.S. Pat. No. 5,067,107 entitled “Continuous Computer Performance Measurement Tool That Reduces Operating System Produced Performance Data for Logging into Global, Process, and Workload Files”.
These prior art performance monitoring systems have a number of disadvantages resulting from the use of propriety standards by various vendors. The disadvantages include a high cost for developing the transport and analysis parts for each new application to be monitored; and a lack of efficiency in that a monitoring system can not be used to monitor a number of different applications from different vendors and an application can not be monitored by a number of different monitoring systems from different vendors.
There is also a number of richly functioned existing monitoring systems that have already been deployed for monitoring of applications. However, it is costly to re-write the code of these monitoring systems in order to monitor each new application. It is therefore desirable to provide performance monitoring systems which addresses, in part, some of the shortcomings of existing monitoring systems noted above.
Performance data in this document refers to information that provides a snapshot or a quick scan of computing system or server activity, and includes such data as how much memory is being used and by which processes. Performance tools in this document refers to the analysis part of performance monitoring systems.